<?php 	
	//connessione db
	require("functions/connessione.php");
	$mess="";
	if($_POST['mode']==1) //controllo se la pagina è stata invocata per inserire i dati di un nuovo utente o se per attivarlo
	{
		//inizio procedura inserimento nuovi dati
		//controllo che l'username non sia già registrato e/o che non ci siano già altri account con la stessa email.
		//inizializzazione dati
		$username=$_POST['user'];
		$usermail=$_POST['email'];
		$password=md5($_POST['psw']);

		//controllo username
		$query="SELECT COUNT(username) AS count FROM users WHERE username='$username';";
		$result=mysql_query($query);
		$flag1=$result['count'];
		//controllo email
		$query="SELECT COUNT(user_email) AS count FROM users WHERE username='$usermail';";
		$result=mysql_query($query);
		$flag2=$result['count'];

		//questa pagina si occupa del caricamento dei dati di registrazione dell'utente nel database e di inviare l'email di attivazione all'utente dopo aver controllato che i dati inseriti siano validi.
		if(strlen($username)>0 && strlen($usermail)>0 && $usermail==$_POST['email2'] && strlen($password)>7 && $password==md5($_POST['psw2']) && $flag1==0 && $flag2==0 && ereg(
'^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)*\.([a-zA-Z]{2,6})$', $_POST['email']))
		{
			//controllo se ci sono stati errori nel caricamento dell'avatar utente. viene fatto qui perchè non è un campo obbligatorio quindi non essenziale all'iscrizione		
			if(strlen($_FILES['avatar']['tmp_name'])>0)
			{
				if($_FILES['avatar']['error']==UPLOAD_ERR_OK)
				{
					//immagine caricata correttamente
					define(DIM_MAX,20000);	//dimensione massima upload
					$localdir="images/avatar/";	//directory in cui salvare l'avatar
					//informazioni sul file
					$sizeavv=$_FILES['avatar']['size'];	//dimensione file
					$typeavv=$_FILES['avatar']['type'];	//tipo mime
					$nameavv=$_FILES['avatar']['name'];	//nome client
					$tempavv=$_FILES['avatar']['tmp_name'];	//nome sul server

					//controllo caratteristiche file immagine
					if($type=='image/jpeg' || $type=='image/jpg' || $type=='image/gif')
					{
						if($size<=DIM_MAX)
						{
							//il file è delle dimensioni e del tipo giusto
							move_uploaded_file($tmpavv,"images/avatar/".$username.$typeavv);
							$urlavatar="images/avatar/".$username.$typeavv;
						}
						else
						{
							$mess="Errore nel caricamento dell'avatar. Sono permessi solo file immagini inferiori ai 29kb.";
						}
					}
					else
						$mess="Errore nel caricamento dell'avatar. Sono permessi solo file immagine di tipo jpg, jpeg, gif.";
			}
			else
				$mess="Errore! Avatar non caricato correttamente.";
		}
		if(strlen($urlavatar)>0)
			$query="INSERT INTO users(username,user_password,user_email,url_avatar) VALUES($username,$password,$usermail,$urlavatar);";
		else
			$query="INSERT INTO users(username,user_password,user_email) VALUES('$username','$password','$usermail');";
			$newuser=mysql_query($query,$conn);
			if($newuser)
			{
				mail($usermail,"Benvenuto in j-ax.it!\nPer completare l'iscirzione clicca sul seguente link: http://localhost/db/registrazione.php?mode=2&user=$username&psw=$password e verrai subito attivato","From:forum@j-ax.it");
				$mess="Dati inseriti correttamente! Una email è stata gi&agrave; spedita alla tua casella email. Per completare l'iscrizione clicca sul link contenuto in essa";
			}
			else
			{
				$mess="Errore Mysql! Impossibile inserire i dati del nuovo utente";
			}
		}
		else
		{
			//messaggi di errore dovuti ad un inserimento errato dei dati da parte dell'utente
			if($flag1!=0) //username già presente
				$mess=$mess."<p>Errore! Username non disponibile.</p>";
			if($flag2!=0) //email già presente
				$mess=$mess."<p>Errore! Esiste già un utente registrato con questo indirizzo email.</p>";
			if(strlen($username) <= 0) //username non inserito
				$mess=$mess."<p>Errore! Username non inserito.</p>";
			if(strlen($usermail) <= 0) //indirizzo email non inserito
				$mess=$mess."<p>Errore! Indirizzo email non inserito</p>";
			if($usermail != $_POST['email2']) //email di conferma non valida
				$mess=$mess."<p>Errore! L'email di conferma non coincide con quella d'iscrizione</p>";
			if(strlen($password) <= 8) //password non inserita correttamente
				$mess=$mess."<p>Errore! La password deve essere lunga almeno 8 caratteri</p>";
			if($password != md5($_POST['psw2'])) //password di conferma non coincide
				$mess=$mess."<p>Errore! La password e la password di conferma non coincidono</p>";
			if(!ereg('^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)*\.([a-zA-Z]{2,6})$', $usermail)) //
				$mess=$mess."<p>Errore! Il campo email non contiene un indirizzo email!</p>";
		}
	}
	else
	{
		if($_GET['mode']==2)
		{
			//attivazione account
			$now=date("Y-m-d H:i:s");
			$username=$_GET['user'];
			$md5psw=$_GET['psw'];
			$query="UPDATE users SET user_registration_date='$now' WHERE username='$username' && user_password='$md5psw';";
			if(mysql_query($query))
				$mess="Complimenti! Registrazione completata! Benvenuto in j-ax.it";
			else
				$mess="Errore MYSQL! Impossibile attivare l'utente";
		}
	}
	include("attivazione.html");
?>
